import {defineConfig} from 'vite'
import vue from '@vitejs/plugin-vue'
import path from "path"

// https://vitejs.dev/config/
export default defineConfig({
    plugins: [vue()],
    resolve: {
        alias: {
            // '@': '/src/',
            '@': path.resolve(__dirname, './src'),
        },
        dedupe: ['vue']
    },
    build: {
        outDir: 'm-panel',
        emptyOutDir: false,
        lib: {
            entry: path.resolve(__dirname, "./src/components/MPanel/index.ts"),
            name: "m-panel",
            //只指定文件名，默认生成.js和.cjs两个文件，.js是es模块，.cjs是commonjs模块。在package.json中type=module代表生成es模块
            fileName:"m-panel"
            // fileName(format, entryName) {
            //     //format有es和umd两中，es是ecmascript模块，umd是nodejs的commonjs格式，
            //     //两种格式不通用，浏览器中用的是es，nodejs中用umd。
            //     return `m-panel.${format}.js`
            //     // return `m-panel.js`
            // },
        },
        rollupOptions: {
            //不需要打包的库
            external: ["vue"],
            output: {
                globals: {vue: 'Vue'}
            }
        }
    }
})
